package com.ohs.ohsoa.system.service;

import java.util.List;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ohs.ohsoa.system.dto.OvertimeLeaveInfoParamDto;
import com.ohs.ohsoa.system.entity.OvertimeLeaveInfo;
import com.ohs.ohsoa.system.vo.OvertimeLeaveInfoParamVo;
import com.ohs.ohsoa.utils.bean.requestBean.PageParam;

/**
 * 加班欠勤明细Service
 *
 * @author hds
 *
 */
public interface OvertimeLeaveInfoService extends IService<OvertimeLeaveInfo> {


   /**
     * 获取列表信息
     *
     * @param pageParam 列表信息
     * @return 列表信息
     */
    List<OvertimeLeaveInfoParamVo> overtimeleaveinfoSelectList(
            PageParam<OvertimeLeaveInfoParamDto> pageParam);
//    ResultPageBean<OvertimeLeaveInfoParamVo> overtimeleaveinfoSelectList(
//            PageParam<OvertimeLeaveInfoParamDto> pageParam);

    /**
     * 获取详细信息
     *
     * @param overtimeLeaveInfoParamDto 加班信息
     * @return 加班信息
     */
    List<OvertimeLeaveInfoParamVo> overtimeleaveinfoSelect(OvertimeLeaveInfoParamDto overtimeLeaveInfoParamDto);

    /**
     * 新增加班欠费信息
     *
     * @param overtimeLeaveInfoParamDto 加班欠费信息
     * @return 新增结果
     */
    Boolean overtimeleaveinfoInsert(OvertimeLeaveInfoParamDto overtimeLeaveInfoParamDto);

    /**
     * 删除加班欠费信息
     *
     * @param overtimeLeaveInfoParamDto 加班欠费信息
     * @return 删除结果
     */
    Boolean overtimeleaveinfoDelete(OvertimeLeaveInfoParamDto overtimeLeaveInfoParamDto);

    /**
     * 修改加班欠费信息
     *
     * @param overtimeLeaveInfoParamDto 加班欠费信息
     * @return 修改结果
     */
    Boolean overtimeleaveinfoUpdate(OvertimeLeaveInfoParamDto overtimeLeaveInfoParamDto);

    /**
     * 审核通过
     *
     * @param overtimeLeaveInfoParamDto 加班信息
     * @return 是否通过
     */
    Boolean overtimeleaveinfoVerified(OvertimeLeaveInfoParamDto overtimeLeaveInfoParamDto);
}
